package com.agileboot.domain.airport.report.command;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import java.util.Date;

/**
 * 更新安全信息命令
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class UpdateReportCommand extends AddReportCommand {

    @NotNull(message = "安全信息ID不能为空")
    @Positive
    private Long reportId;

    private Long updaterId;

    private String updaterBy;

    // 整改要求
    private String reformRequirement;
    // 制定措施期限
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC")
    private Date actionDeadline;
    // 整改完成期限
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC")
    private Date correctiveDeadline;
    // 责任单位
    private Long dutyDeptId;
    // 整改单位
    private Long dealDeptId;

    private Long userId;

}
